From aefe867d3f758a8ddd608849bc381dcbd7c4db20 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Tue, 21 Dec 2010 18:09:34 +0000 Subject: [PATCH] x86 hvm ept: Remove EPT guest linear address validation For EPT violation resulting from an attempt to load the guest PDPTEs as part of the execution of the MOV CR instruction, the EPT_GLA_VALID is not valid. This situation should not happen in most situation, since we always populate guest memory. But this is not ture for PAE guest under the PoD/Page sharing situation. In that situation, a page pointed by CR3 may be un-populated, and we need handle it in such situation. Signed-off-by: Jiang, Yunhong --- xen/arch/x86/hvm/vmx/vmx.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index f89428d60e..b4c8570503 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -2079,8 +2079,7 @@ static void ept_handle_violation(unsigned long qualification, paddr_t gpa) __trace_var(TRC_HVM_NPF, 0, sizeof(_d), &_d); } - if ( (qualification & EPT_GLA_VALID) && - hvm_hap_nested_page_fault(gfn) ) + if ( hvm_hap_nested_page_fault(gfn) ) return; /* Everything else is an error. */ -- 2.30.2